import request from '@/utils/request'

// 获取员工简单列表（只包含姓名id 等 简单信息）
export const reqGetEmployeeSimple = () => {
  return request.get('/sys/user/simple')
}

// 获取员工综合列表数据（带分页）
export const reqGetEmployeeList = (page, size) => {
  return request.get('/sys/user', {
    params: {
      page,
      size
    }
  })
}

// 新增员工 { username, mobile, formOfEmpoyment, ... }
export const reqAddEmployee = (data) => {
  return request.post('/sys/user', data)
}

// 批量新增 数组包对象，每个对象都是一个员工
// [
//   { username, mobile, formOfEmpoyment, ... },
//   { username, mobile, formOfEmpoyment, ... },
//   { username, mobile, formOfEmpoyment, ... }
//   ...
// ]
export const reqImportEmployee = (data) => {
  return request.post('/sys/user/batch', data)
}

/**
 * 删除员工
 */
export function reqDelEmployee(id) {
  return request({
    method: 'delete',
    url: `/sys/user/${id}`
  })
}

/** *
 * 保存员工的基本信息
 * **/
export function reqSaveUserDetailById(data) {
  return request({
    method: 'put',
    url: `/sys/user/${data.id}`,
    data
  })
}

/** *
 *  读取用户详情的基础信息 (个人详情-下面的接口)
 * **/
export function reqGetPersonalDetail(id) {
  return request({
    method: 'get',
    url: `/employees/${id}/personalInfo`
  })
}

/** *
 *  更新用户详情的基础信息 (个人详情-下面的接口)
 * **/
export function reqUpdatePersonal(data) {
  return request({
    method: 'put',
    url: `/employees/${data.userId}/personalInfo`,
    data
  })
}

/** **
 * 获取用户的岗位信息  (岗位信息)
 * ****/
export function reqGetJobDetail(id) {
  return request({
    method: 'get',
    url: `/employees/${id}/jobs`
  })
}

/**
 * 保存岗位信息  (岗位信息)
 * ****/
export function reqUpdateJob(data) {
  return request({
    method: 'put',
    url: `/employees/${data.userId}/jobs`,
    data
  })
}

/** *
 * 给员工分配角色
 * ***/
export function reqAssignRoles(data) {
  return request.put('/sys/user/assignRoles', data)
}
